<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>插件测试页面</title>
    <style>
        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            line-height: 1.6;
            margin: 0;
            padding: 20px;
            background: #f5f5f5;
        }
        .container {
            max-width: 800px;
            margin: 0 auto;
            background: white;
            padding: 30px;
            border-radius: 10px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        h1 {
            color: #333;
            border-bottom: 3px solid #ff6b6b;
            padding-bottom: 10px;
        }
        .test-section {
            margin: 20px 0;
            padding: 20px;
            background: #f8f9fa;
            border-radius: 8px;
            border-left: 4px solid #74b9ff;
        }
        .highlight {
            background: #fff3cd;
            padding: 10px;
            border-radius: 4px;
            border: 1px solid #ffeaa7;
            margin: 10px 0;
        }
        code {
            background: #e9ecef;
            padding: 2px 6px;
            border-radius: 4px;
            font-family: 'Monaco', 'Consolas', monospace;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>🔧 插件测试页面</h1>
        
        <div class="test-section">
            <h2>📋 测试说明</h2>
            <p>这个页面用于测试 GitCode Issue Feedback 插件是否正常工作。</p>
            <p>请按照以下步骤进行测试：</p>
            <ol>
                <li>选中下面任意一段文本</li>
                <li>点击右下角的"报告问题"按钮</li>
                <li>观察按钮状态变化</li>
                <li>检查是否跳转到正确的问题创建页面</li>
            </ol>
        </div>

        <div class="test-section">
            <h2>📝 测试文本 1</h2>
            <div class="highlight">
                <p>这是一段用于测试的文本内容。请选中这段文字，然后点击右下角的反馈按钮，看看插件是否能正确提取选中的内容。</p>
                <p>插件应该能够：</p>
                <ul>
                    <li>自动提取选中的文本</li>
                    <li>生成包含上下文的问题描述</li>
                    <li>提供编辑链接</li>
                </ul>
            </div>
        </div>

        <div class="test-section">
            <h2>🐛 测试文本 2</h2>
            <div class="highlight">
                <p>这里模拟一个代码示例：</p>
                <pre><code>function testPlugin() {
    console.log('Testing GitCode Issue Feedback Plugin');
    return 'Success!';
}</code></pre>
                <p>如果您发现这段代码有问题，请选中相关部分并点击反馈按钮。</p>
            </div>
        </div>

        <div class="test-section">
            <h2>✅ 预期结果</h2>
            <p>当您点击"报告问题"按钮时，应该看到：</p>
            <ul>
                <li>按钮变为"Loading..."状态（带旋转动画）</li>
                <li>成功时显示"Issue Created!"（绿色）</li>
                <li>失败时显示"Error!"（红色）</li>
                <li>自动跳转到 GitCode 问题创建页面</li>
            </ul>
        </div>

        <div class="test-section">
            <h2>🔍 调试信息</h2>
            <p>如果插件不工作，请：</p>
            <ol>
                <li>打开浏览器开发者工具（F12）</li>
                <li>查看 Console 标签页的错误信息</li>
                <li>检查 Network 标签页的网络请求</li>
                <li>确认插件文件是否正确加载</li>
            </ol>
        </div>
    </div>

    <!-- 模拟 GitBook 环境 -->
    <script>
        // 模拟 GitBook 对象
        window.require = function(deps, callback) {
            if (deps.includes('gitbook')) {
                const mockGitbook = {
                    events: {
                        bind: function(event, handler) {
                            if (event === 'start') {
                                // 模拟插件配置
                                const pluginConfig = {
                                    'gitbook-plugin-gitcode-issue-feedback': {
                                        repo: 'nutpi/gitbook-plugin-gitcode-issue-feedback',
                                        label: '报告问题',
                                        private: false
                                    }
                                };
                                
                                // 模拟 GitBook 状态
                                const mockState = {
                                    config: { root: './' },
                                    filepath: 'test-plugin.html',
                                    chapterTitle: '插件测试页面'
                                };
                                
                                // 延迟执行，模拟真实环境
                                setTimeout(() => {
                                    handler({}, pluginConfig);
                                }, 100);
                            }
                        }
                    },
                    state: {
                        config: { root: './' },
                        filepath: 'test-plugin.html',
                        chapterTitle: '插件测试页面'
                    }
                };
                callback(mockGitbook);
            }
        };

        // 加载插件
        const script = document.createElement('script');
        script.src = '../assets/plugin.js';
        script.onload = function() {
            console.log('✅ 插件加载成功');
        };
        script.onerror = function() {
            console.error('❌ 插件加载失败');
        };
        document.head.appendChild(script);
    </script>
</body>
</html>
